<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class master_responden extends arfaController {

	public function __construct()
	{
		parent::__construct();
		$this->load->helper('general');
		$this->cekLogin();
		$this->load->model('m_pendidikan_model');
		$this->load->model('m_pekerjaan_model');
		$this->load->model('m_usia_model');
		$this->load->model('m_urus_izin_model');
	}

	public function index()
	{
		$data["kosong"] = "kosong";
		$data["content"] = $this->load->view("grid_master_responden",$data,true);
		$data["menu"] 	= "admin";
		$this->load->view('main',$data);
	}

	// start usia
	public function master_usia($pesan=NULL)
	{
		if( isset($pesan) && $pesan == "pesan" ) {
			$data["message"] 	= $pesan;
		} elseif( isset($pesan) && $pesan == "error" ) {
			$data["message"] 	= $pesan;
		} else {

		}

		$data["master_usia"]	= $this->m_usia_model->get();
		$data["content"] 		= $this->load->view("grid_master_usia",$data,true);
		$data["menu"] 			= "admin";
		$this->load->view('main',$data);
	}

	public function form_master_usia( $id = FALSE )
	{
		$this->form_validation->set_rules("range_usia","Nama Pendidikan","required");
		$this->form_validation->set_rules("status","Status Pendidikan","required");

		if($this->form_validation->run() == FALSE) {
			if( $id == FALSE ) {
				$data["id"]			= $id;
				$data["content"]	= $this->load->view("form_master_usia",$data,true);
				$data["menu"] 			= "admin";
				$this->load->view("main",$data);
			} else {
				$data["id"]			= $id;
				$data["value"]		= $this->m_usia_model->get($id);
				$data["content"]	= $this->load->view("form_master_usia",$data,true);
				$data["menu"] 		= "admin";
				$this->load->view("main",$data);
			}
		} else {
			$range_usia	= $this->input->post("range_usia");
			$keterangan	= $this->input->post("keterangan");
			$status		= $this->input->post("status");

			$count = $this->m_usia_model->cek_usia_aktif();

			$cek_data = $this->m_usia_model->get_by('kd_usia', $id, NULL, TRUE); // data terdahulu
			$cek_range_usia = $this->m_usia_model->get_by("range_usia", $range_usia, NULL, TRUE); // cek ada nama yang sama apa enggak

			if( $id == FALSE && $status == "1" ) {
				if( $count < 4 && $cek_range_usia == NULL ) {
					// yang aktif kurang dari 4
					$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
					$this->m_usia_model->save($data, $id);
					redirect("master_responden/master_usia/pesan");
				} else {
					// yang aktif lebih dari 4
					redirect("master_responden/master_usia/error");
				}
			} elseif( $id == FALSE && $status == "0" ) {
				if( $cek_range_usia == NULL ) {
					// tambah range_usia status non-aktif yang ga ada di database
					$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
					$this->m_usia_model->save($data, $id);
					redirect("master_responden/master_usia/pesan");
				} else {
					redirect("master_responden/master_usia/error");
				}
			} elseif( $id != FALSE && $id == $cek_data['kd_usia'] ) {
				if( $cek_range_usia != NULL && $cek_data['status_usia'] == "1" && $status == "0" ) {
					// ga ngerubah range_usia tapi ngerubah status dari aktif ke non-aktif
					$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
					$this->m_usia_model->save($data, $id);
					redirect("master_responden/master_usia/pesan");
				} elseif( $cek_range_usia != NULL && $cek_data['status_usia'] == "0" && $status == "1" ) {
					// ga ngerubah range_usia tapi ngerubah status dari non-aktif ke aktif
					if( $count < 4 ) {
						// dirubah kalo status yang aktif di DB kurang dari 4
						$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
						$this->m_usia_model->save($data, $id);
						redirect("master_responden/master_usia/pesan");
					} else {
						redirect("master_responden/master_usia/error");
					}
				} elseif( $cek_range_usia == NULL && $cek_data['status_usia'] == "1" && $status == "1" || $cek_range_usia == NULL && $cek_data['status_usia'] == "0" && $status == "0" ) {
					// rubah range_usia yang statusnya aktif ke aktif || rubah range_usia yang statusnya non-aktif ke non-aktif
					$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
					$this->m_usia_model->save($data, $id);
					redirect("master_responden/master_usia/pesan");
				} elseif( $cek_range_usia == NULL && $cek_data['status_usia'] == "1" && $status == "0" ) {
					// rubah range_usia yang statusnya aktif ke non-aktif
					$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
					$this->m_usia_model->save($data, $id);
					redirect("master_responden/master_usia/pesan");
				} elseif( $cek_range_usia == NULL && $cek_data['status_usia'] == "0" && $status == "1" ) {
					// rubah range_usia dari yang statusnya aktif ke non-aktif
					if( $count < 4 ) {
						// dirubah kalo status yang aktif di DB kurang dari 4
						$data	= array("range_usia"=>$range_usia,"keterangan"=>$keterangan,"status_usia"=>$status);
						$this->m_usia_model->save($data, $id);
						redirect("master_responden/master_usia/pesan");
					} else {
						redirect("master_responden/master_usia/error");
					}
				} else {
					redirect("master_responden/master_usia/error");
				}
			} else {
				redirect("master_responden/master_usia/error");
			}
		}
	}
	// end usia

	// start pendidikan
	public function master_pendidikan($pesan = NULL)
	{
		if( isset($pesan) && $pesan == "pesan") {
			$data["message"] 	= $pesan;
		} elseif( isset($pesan) && $pesan == "error") {
			$data["message"] 	= $pesan;
		} else {

		}

		$data["master_pendidikan"]	= $this->m_pendidikan_model->get();
		$data["content"] 			= $this->load->view("grid_master_pendidikan",$data,true);
		$data["menu"] 				= "admin";
		$this->load->view('main',$data);
	}

	public function form_master_pendidikan( $id = FALSE )
	{
		$this->form_validation->set_rules("pendidikan","Nama Pendidikan","required");
		$this->form_validation->set_rules("status","Status Pendidikan","required");

		if($this->form_validation->run() == FALSE) {
			if( $id == FALSE ) {
				$data["id"]			= $id;
				$data["content"]	= $this->load->view("form_master_pendidikan",$data,true);
				$data["menu"] 		= "admin";
				$this->load->view("main",$data);
			} else {
				$data["id"]			= $id;
				$data["value"]		= $this->m_pendidikan_model->get($id);
				$data["content"]	= $this->load->view("form_master_pendidikan",$data,true);
				$data["menu"] 			= "admin";
				$this->load->view("main",$data);
			}
		} else {
			$pendidikan	= $this->input->post("pendidikan");
			$keterangan	= $this->input->post("keterangan");
			$status		= $this->input->post("status");

			$count = $this->m_pendidikan_model->cek_pendidikan_aktif();

			$cek_data = $this->m_pendidikan_model->get_by('kd_pendidikan', $id, NULL, TRUE); // data terdahulu
			$cek_pendidikan = $this->m_pendidikan_model->get_by("nm_pendidikan", $pendidikan, NULL, TRUE); // cek ada nama yang sama apa enggak

			if( $id == FALSE && $status == "1" ) {
				if( $count < 6 && $cek_pendidikan == NULL ) {
					// yang aktif kurang dari 6
					$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
					$this->m_pendidikan_model->save($data, $id);
					redirect("master_responden/master_pendidikan/pesan");
				} else {
					// yang aktif lebih dari 6
					redirect("master_responden/master_pendidikan/error");
				}
			} elseif( $id == FALSE && $status == "0" ) {
				if( $cek_pendidikan == NULL ) {
					// tambah pendidikan status non-aktif yang ga ada di database
					$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
					$this->m_pendidikan_model->save($data, $id);
					redirect("master_responden/master_pendidikan/pesan");
				} else {
					redirect("master_responden/master_pendidikan/error");
				}
			} elseif( $id != FALSE && $id == $cek_data['kd_pendidikan'] ) {
				if( $cek_pendidikan != NULL && $cek_data['status_pendidikan'] == "1" && $status == "0" ) {
					// ga ngerubah pendidikan tapi ngerubah status dari aktif ke non-aktif
					$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
					$this->m_pendidikan_model->save($data, $id);
					redirect("master_responden/master_pendidikan/pesan");
				} elseif( $cek_pendidikan != NULL && $cek_data['status_pendidikan'] == "0" && $status == "1" ) {
					// ga ngerubah pendidikan tapi ngerubah status dari non-aktif ke aktif
					if( $count < 6 ) {
						// dirubah kalo status yang aktif di DB kurang dari 6
						$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
						$this->m_pendidikan_model->save($data, $id);
						redirect("master_responden/master_pendidikan/pesan");
					} else {
						redirect("master_responden/master_pendidikan/error");
					}
				} elseif( $cek_pendidikan == NULL && $cek_data['status_pendidikan'] == "1" && $status == "1" || $cek_pendidikan == NULL && $cek_data['status_pendidikan'] == "0" && $status == "0" ) {
					// rubah pendidikan yang statusnya aktif ke aktif || rubah pendidikan yang statusnya non-aktif ke non-aktif
					$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
					$this->m_pendidikan_model->save($data, $id);
					redirect("master_responden/master_pendidikan/pesan");
				} elseif( $cek_pendidikan == NULL && $cek_data['status_pendidikan'] == "1" && $status == "0" ) {
					// rubah pendidikan yang statusnya aktif ke non-aktif
					$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
					$this->m_pendidikan_model->save($data, $id);
					redirect("master_responden/master_pendidikan/pesan");
				} elseif( $cek_pendidikan == NULL && $cek_data['status_pendidikan'] == "0" && $status == "1" ) {
					// rubah pendidikan dari yang statusnya aktif ke non-aktif
					if( $count < 6 ) {
						// dirubah kalo status yang aktif di DB kurang dari 6
						$data	= array("nm_pendidikan"=>$pendidikan,"keterangan"=>$keterangan,"status_pendidikan"=>$status);
						$this->m_pendidikan_model->save($data, $id);
						redirect("master_responden/master_pendidikan/pesan");
					} else {
						redirect("master_responden/master_pendidikan/error");
					}
				} else {
					redirect("master_responden/master_pendidikan/error");
				}
			} else {
				redirect("master_responden/master_pendidikan/error");
			}
		}
	}
	// end pendidikan

	// start pekerjaan
	public function master_pekerjaan($pesan=NULL)
	{
		if( isset($pesan) && $pesan == "pesan") {
			$data["message"] 	= $pesan;
		} elseif( isset($pesan) && $pesan == "error") {
			$data["message"] 	= $pesan;
		} else {

		}

		$data["master_pekerjaan"]	= $this->m_pekerjaan_model->get();
		$data["content"] 			= $this->load->view("grid_master_pekerjaan",$data,true);
		$data["menu"] 				= "admin";
		$this->load->view('main',$data);
	}

	public function form_master_pekerjaan( $id = FALSE )
	{
		$this->form_validation->set_rules("pekerjaan","Nama Pendidikan","required");
		$this->form_validation->set_rules("status","Status Pendidikan","required");

		if($this->form_validation->run() == FALSE) {
			if( $id == FALSE ) {
				$data["id"]			= $id;
				$data["content"]	= $this->load->view("form_master_pekerjaan",$data,true);
				$data["menu"] 			= "admin";
				$this->load->view("main",$data);
			} else {
				$data["id"]			= $id;
				$data["value"]		= $this->m_pekerjaan_model->get($id);
				$data["content"]	= $this->load->view("form_master_pekerjaan",$data,true);
				$data["menu"] 			= "admin";
				$this->load->view("main",$data);
			}
		} else {
			$pekerjaan	= $this->input->post("pekerjaan");
			$keterangan	= $this->input->post("keterangan");
			$status		= $this->input->post("status");

			$count = $this->m_pekerjaan_model->cek_pekerjaan_aktif();

			$cek_data = $this->m_pekerjaan_model->get_by('kd_pekerjaan', $id, NULL, TRUE); // data terdahulu
			$cek_pekerjaan = $this->m_pekerjaan_model->get_by("nm_pekerjaan", $pekerjaan, NULL, TRUE); // cek ada nama yang sama apa enggak

			if( $id == FALSE && $status == "1" ) {
				if( $count < 6 && $cek_pekerjaan == NULL ) {
					// yang aktif kurang dari 6
					$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
					$this->m_pekerjaan_model->save($data, $id);
					redirect("master_responden/master_pekerjaan/pesan");
				} else {
					// yang aktif lebih dari 6
					redirect("master_responden/master_pekerjaan/error");
				}
			} elseif( $id == FALSE && $status == "0" ) {
				if( $cek_pekerjaan == NULL ) {
					// tambah pekerjaan status non-aktif yang ga ada di database
					$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
					$this->m_pekerjaan_model->save($data, $id);
					redirect("master_responden/master_pekerjaan/pesan");
				} else {
					redirect("master_responden/master_pekerjaan/error");
				}
			} elseif( $id != FALSE && $id == $cek_data['kd_pekerjaan'] ) {
				if( $cek_pekerjaan != NULL && $cek_data['status_pekerjaan'] == "1" && $status == "0" ) {
					// ga ngerubah pekerjaan tapi ngerubah status dari aktif ke non-aktif
					$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
					$this->m_pekerjaan_model->save($data, $id);
					redirect("master_responden/master_pekerjaan/pesan");
				} elseif( $cek_pekerjaan != NULL && $cek_data['status_pekerjaan'] == "0" && $status == "1" ) {
					// ga ngerubah pekerjaan tapi ngerubah status dari non-aktif ke aktif
					if( $count < 6 ) {
						// dirubah kalo status yang aktif di DB kurang dari 6
						$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
						$this->m_pekerjaan_model->save($data, $id);
						redirect("master_responden/master_pekerjaan/pesan");
					} else {
						redirect("master_responden/master_pekerjaan/error");
					}
				} elseif( $cek_pekerjaan == NULL && $cek_data['status_pekerjaan'] == "1" && $status == "1" || $cek_pekerjaan == NULL && $cek_data['status_pekerjaan'] == "0" && $status == "0" ) {
					// rubah pekerjaan yang statusnya aktif ke aktif || rubah pekerjaan yang statusnya non-aktif ke non-aktif
					$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
					$this->m_pekerjaan_model->save($data, $id);
					redirect("master_responden/master_pekerjaan/pesan");
				} elseif( $cek_pekerjaan == NULL && $cek_data['status_pekerjaan'] == "1" && $status == "0" ) {
					// rubah pekerjaan yang statusnya aktif ke non-aktif
					$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
					$this->m_pekerjaan_model->save($data, $id);
					redirect("master_responden/master_pekerjaan/pesan");
				} elseif( $cek_pekerjaan == NULL && $cek_data['status_pekerjaan'] == "0" && $status == "1" ) {
					// rubah pekerjaan dari yang statusnya aktif ke non-aktif
					if( $count < 6 ) {
						// dirubah kalo status yang aktif di DB kurang dari 6
						$data	= array("nm_pekerjaan"=>$pekerjaan,"keterangan"=>$keterangan,"status_pekerjaan"=>$status);
						$this->m_pekerjaan_model->save($data, $id);
						redirect("master_responden/master_pekerjaan/pesan");
					} else {
						redirect("master_responden/master_pekerjaan/error");
					}
				} else {
					redirect("master_responden/master_pekerjaan/error");
				}
			} else {
				redirect("master_responden/master_pekerjaan/error");
			}
		}
	}
	// end pekerjaan

	// start urus_izin
	public function master_urus_izin($pesan=NULL)
	{
		if( isset($pesan) && $pesan == "pesan") {
			$data["message"] 	= $pesan;
		} elseif( isset($pesan) && $pesan == "error") {
			$data["message"] 	= $pesan;
		} else {

		}

		$data["master_urus_izin"]	= $this->m_urus_izin_model->get();
		$data["content"] = $this->load->view("grid_master_urus_izin",$data,true);
		$data["menu"] 			= "admin";
		$this->load->view('main',$data);
	}

	public function form_master_urus_izin( $id = FALSE )
	{
		$this->form_validation->set_rules("range_urus_izin","Nama Pendidikan","required");
		$this->form_validation->set_rules("status","Status Pendidikan","required");

		if($this->form_validation->run() == FALSE) {
			if( $id == FALSE ) {
				$data["id"]			= $id;
				$data["content"]	= $this->load->view("form_master_urus_izin",$data,true);
				$data["menu"] 		= "admin";
				$this->load->view("main",$data);
			} else {
				$data["id"]			= $id;
				$data["value"]		= $this->m_urus_izin_model->get($id);
				$data["content"]	= $this->load->view("form_master_urus_izin",$data,true);
				$data["menu"] 		= "admin";
				$this->load->view("main",$data);
			}
		} else {
			$urus_izin	= $this->input->post("range_urus_izin");
			$keterangan	= $this->input->post("keterangan");
			$status		= $this->input->post("status");

			$count = $this->m_urus_izin_model->cek_urus_izin_aktif();

			$cek_data = $this->m_urus_izin_model->get_by('kd_urus_izin', $id, NULL, TRUE); // data terdahulu
			$cek_urus_izin = $this->m_urus_izin_model->get_by("urus_izin", $urus_izin, NULL, TRUE); // cek ada nama yang sama apa enggak

			if( $id == FALSE && $status == "1" ) {
				if( $count < 3 && $cek_urus_izin == NULL ) {
					// yang aktif kurang dari 3
					$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
					$this->m_urus_izin_model->save($data, $id);
					redirect("master_responden/master_urus_izin/pesan");
				} else {
					// yang aktif lebih dari 3
					redirect("master_responden/master_urus_izin/error");
				}
			} elseif( $id == FALSE && $status == "0" ) {
				if( $cek_urus_izin == NULL ) {
					// tambah urus_izin status non-aktif yang ga ada di database
					$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
					$this->m_urus_izin_model->save($data, $id);
					redirect("master_responden/master_urus_izin/pesan");
				} else {
					redirect("master_responden/master_urus_izin/error");
				}
			} elseif( $id != FALSE && $id == $cek_data['kd_urus_izin'] ) {
				if( $cek_urus_izin != NULL && $cek_data['status_urus_izin'] == "1" && $status == "0" ) {
					// ga ngerubah urus_izin tapi ngerubah status dari aktif ke non-aktif
					$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
					$this->m_urus_izin_model->save($data, $id);
					redirect("master_responden/master_urus_izin/pesan");
				} elseif( $cek_urus_izin != NULL && $cek_data['status_urus_izin'] == "0" && $status == "1" ) {
					// ga ngerubah urus_izin tapi ngerubah status dari non-aktif ke aktif
					if( $count < 3 ) {
						// dirubah kalo status yang aktif di DB kurang dari 3
						$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
						$this->m_urus_izin_model->save($data, $id);
						redirect("master_responden/master_urus_izin/pesan");
					} else {
						redirect("master_responden/master_urus_izin/error");
					}
				} elseif( $cek_urus_izin == NULL && $cek_data['status_urus_izin'] == "1" && $status == "1" || $cek_urus_izin == NULL && $cek_data['status_urus_izin'] == "0" && $status == "0" ) {
					// rubah urus_izin yang statusnya aktif ke aktif || rubah urus_izin yang statusnya non-aktif ke non-aktif
					$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
					$this->m_urus_izin_model->save($data, $id);
					redirect("master_responden/master_urus_izin/pesan");
				} elseif( $cek_urus_izin == NULL && $cek_data['status_urus_izin'] == "1" && $status == "0" ) {
					// rubah urus_izin yang statusnya aktif ke non-aktif
					$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
					$this->m_urus_izin_model->save($data, $id);
					redirect("master_responden/master_urus_izin/pesan");
				} elseif( $cek_urus_izin == NULL && $cek_data['status_urus_izin'] == "0" && $status == "1" ) {
					// rubah urus_izin dari yang statusnya aktif ke non-aktif
					if( $count < 3 ) {
						// dirubah kalo status yang aktif di DB kurang dari 3
						$data	= array("urus_izin"=>$urus_izin,"keterangan"=>$keterangan,"status_urus_izin"=>$status);
						$this->m_urus_izin_model->save($data, $id);
						redirect("master_responden/master_urus_izin/pesan");
					} else {
						redirect("master_responden/master_urus_izin/error");
					}
				} else {
					redirect("master_responden/master_urus_izin/error");
				}
			} else {
				redirect("master_responden/master_urus_izin/error");
			}
		}
	}
	// end urus_izin
}